#ifndef _HT1621_H_
#define _HT1621_H_

#include "Global.h"

enum
{
    SEG12=12,
    SEG13,
    SEG14,
    SEG15,
    SEG16,
    SEG17,
    SEG18,
    SEG19,
    SEG20,
    SEG21,
    SEG22,
    SEG23,
    SEG24,
    SEG25,
    SEG26,
    SEG27,
    SEG28,
    SEG29,
    SEG30,
    SEG31,
};


//enum
//{
//    SEG12_13=12,
//    SEG14_15=14,
//    SEG16_17=16,

//    SEG18_19=18,
//    SEG20_21=20,
//    SEG22_23=22,
//    SEG24_25=24,
//    SEG26_27=26,
//    SEG28_29=28,
//    SEG30_31=30,
//};

enum
{
    SEG12_13=0,
    SEG14_15,
    SEG16_17,

    SEG18_19,
    SEG20_21,
    SEG22_23,
    SEG24_25,
    SEG26_27,
    SEG28_29,
    SEG30_31,
};


#define BIAS_1_3 	0x8520      // 1000 0100 0000
#define BIAS_1_2 	0x8500 		// 1000 0101 0000
#define XTAL32K		0x8280		// 1000 0010 1000
#define SYSDIS      0x8000      // 1000 0000 0000
#define SYSEN 		0x8020      // 1000 0000 0010
#define LCDON 		0x8060      // 1000 0000 0110
#define LCDOFF 		0x8040      // 1000 0000 0100
#define IRQ_DIS     0x9000      // 1001 0000 0000
#define IRQ_EN      0x9100      // 1001 0001 0000
#define TIMER_DIS   0x8080      // 1000 0000 1000
#define TIMER_EN    0x80C0      // 1000 0000 1100
#define CLR_TIMER   0x8180      // 1000 0001 1000
#define WDT_DIS     0x80A0      // 1000 0000 1010
#define WDT_EN      0x80E0      // 1000 0000 1110
#define CLR_WDT     0x81C0      // 1000 0001 1100
#define OUT_1HZ     0x9400      // 1001 0100 0000
#define OUT_2HZ     0x9420      // 1001 0100 0010
#define OUT_4HZ     0x9440      // 1001 0100 0100

#define cs      RA1
#define wr      RA2
#define M_WR    0x04
#define dat     RA5
#define M_DAT   0x20
#define SET_WR_OUT()    {TRISA &= ~0x01;}
#define SET_DAT_OUT()   {TRISA &= ~0x02;}
//#define GPIO_SET_OUT(io) {io=0}
//#define GPIO_SET_IN(io)  {io=1}


void SendCmd(uint16 command);
//void SendCmd(uchar command);
void Write_1621(uchar addr,uchar data);
//void WriteGroup_1621(uchar addr, uchar data);
void WriteAll_1621(uchar addr,uchar *p,uchar cnt);


#endif
